import axios from 'axios'
import config from '../config'


var apiUrl= config.apiUrl as any
var baseURL = apiUrl[config.env]

var defaultHttp = axios.create({
	baseURL: baseURL,
	timeout: 60000*5,
	headers: {
		'Content-Type': 'application/json'
	}
})

defaultHttp.interceptors.request.use(function (config) {
	// 在发送请求之前做些什么
	var token = localStorage.getItem('token')
	if (!config.params) config.params = {}
	/* 判断是否已授权 */
	if(token)config.params.token = token
	return config
}, function (error) {
	// 对请求错误做些什么
	return Promise.reject(error)
})

// 添加响应拦截器
defaultHttp.interceptors.response.use(function (response) {

	// 对响应数据做点什么
	if (response.data.code == 401 || response.data.code == 403) {
		// notification.error({
		// 	message: '未登录或登陆过期，请重新登录',
		// 	desc: ''
		// })
		localStorage.removeItem('token')

		return Promise.reject(response.data)
	} else if (response.data.code != 0) {
		return Promise.reject(response.data)
	}
	return response.data
}, function (error) {
	// 对响应错误做点什么
	// console.log(error)
	if (!error.response) {
		// notification.error({
		// 	message: '服务器错误或未知错误',
		// 	desc: ''
		// })
	}
	return Promise.reject(error)
})


export default defaultHttp
